A Visualization Tool for Constraint Program Debugging
نویسندگان
چکیده
Constraint programming is an emerging technology that offers an original approach allowing for efficient and flexible solving of complex problems. Its main advantage relies in its ability to compute with partial information expressed in terms of constraints. These constraints are monotonically accumulated during the program execution in order to restrict the problem search space. In this paper we address one of the cornerstones of this technology, namely the current lack of debugging facilities. In particular, visualization and understanding of the underlying constraint system during program executions is very important. We propose to structure this huge, flat and intricate part of the execution data in order to provide access to high level examination of its evolution. More precisely, we present a means to hierarchically organize sets of constraints in order to divide them into manageable parts while preserving computation correctness. Soundness of our method is shown, an algorithm supporting it is given, and an implemented prototype exhibiting its effectiveness is described.
منابع مشابه
An Assertion Language for Constraint Logic Programs
In an advanced program development environment, such as that discussed in the introduction of this book, several tools may coexist which handle both the program and information on the program in different ways. Also, these tools may interact among themselves and with the user. Thus, the different tools and the user need some way to communicate. It is our design principie that such communication...
متن کاملVisualizing Constraints in Visualization Rules
The visualization rules of TRIP systems are a set of mapping rules that maps source data into the high-level representation of target picture. The data of this representation consists of geometric graphical objects and geometric constraints among them. When the visualization rules have some bugs, the TRIP system cannot solve the constraints properly and cannot generate a target picture. In orde...
متن کاملState Based Visualization of PVM Applications
Understanding the dynamic behavior of parallel programs is a critical issue both for debugging and for optimization. A visualization tool displaying an animated sequence of the global states the program runs through offers valuable support for this process. The paper presents the features and the implementation of VISTOP, a state based visualizer for PVM applications. It supports program flow v...
متن کاملDeclarative Debugging of Missing Answers in Constraint Functional-Logic Programming
It is well known that constraint logic and functional-logic programming languages have many advantages, and there is a growing trend to develop and incorporate effective tools to this class of declarative languages. In particular, debugging tools are a practical need for diagnosing the causes of erroneous computations. Recently [1], we have presented a prototype tool for the declarative diagnos...
متن کاملJaVis: A UML-Based Visualization and Debugging Environment for Concurrent Java Programs
Debugging concurrent Java programs is a difficult task because of multiple control flows and inherent nondeterminism. It requires techniques not provided by traditional debuggers such as tracing, visualization, and automated error analysis. Therefore, we have developed the JaVis environment for visualizing and debugging concurrent Java programs. The information about a running program is collec...
متن کامل